package cn.b.sky.form.dao;

import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 
 * <strong>Title : BusinessTableDao.java<br></strong>
 * <strong>Package : cn.b.sky.flowable.dao<br></strong>
 * <strong>Description : </strong>业务表操作数据接口<br> 
 * <strong>Create on : 2016年9月29日 下午2:10:03<br></strong>
 * <p>
 * @author dapeng.li<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人|修改日期|修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */
public interface BusinessTableDao {
  
  /**
   * 
   * <strong>Title : getTableIsExist<br></strong>
   * <strong>Description : </strong>获得表是否存在<br> 
   * <strong>Create on : 2016年9月29日 下午2:10:23<br></strong>
   * <p>
   * @param tableName
   * @return
   * int
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  public int getTableIsExist(String tableName);
  
  /**
   * 
   * <strong>Title : executeSql<br></strong>
   * <strong>Description : </strong>直接执行SQL<br> 
   * <strong>Create on : 2016年9月29日 下午2:19:57<br></strong>
   * <p>
   * @param sql
   * void
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  public void executeSql(@Param("sql") String sql);
  
  /**
   * 
   * <strong>Title : getTableColumns<br></strong>
   * <strong>Description : </strong>查询数据库表所有列<br> 
   * <strong>Create on : 2016年9月29日 下午3:34:59<br></strong>
   * <p>
   * @param tableName
   * @return
   * List<String>
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  public List<String> getTableColumns(String tableName);

}
